As system architecture designs for network infrastructure applications (and other applications) tend to become more modular in order to optimize component re-usability and to achieve better scalability, efforts are also being made to identify logical components which represent the most fundamental system resources. Those basic system resources can be represented by logical components, where their interactions characterize a particular system architecture design. As systems benefit from offering a system design optimized for the required performance, flexibility also should be considered.
In a system architecture design, several basic logical components can be identified, such as: memory, processing elements, switching elements, etc. Regarding memory devices, it is desirable to improve the memory resources in scalable system architecture designs, leveraging mainly access to and availability of the memory.
Typically, system architecture designs require dedicated memory banks for each processing element. One potential improvement to the dedicated memory solution is to make memory banks available to several different processing elements, which technique is commonly called shared memory. In shared memory implementations, the memory accesses are typically managed by memory controllers, which are responsible for coordinating the different requests for memory access. Memory banks are managed through a memory manager, which manages the memory resources.
While shared memory can improve the memory resources, and potentially better sized for their intended use in terms of design, shared memory implementations still limit the maximum memory access for each processing element. Thus increasing the memory access in existing data processing systems typically requires the provision of new types of memory banks which are capable of handling the higher amount of memory access. Moreover, while conventional memory devices require a memory manager for allocating memory resources, such dedicated or shared memory normally limits its access to physical processing components which are located on the same physical, printed circuit board as the memory.
Accordingly, it would be desirable to provide other memory devices, systems and management techniques which improve memory usage.